package main

import "fmt"

func main() {
	demo1()
	fmt.Println("---------------")
	demo2()
}

func demo1() {
	arr := [...]int{1, 2, 3, 4, 5, 6, 7}
	s1 := arr[0:4]
	s2 := arr[:4]
	s3 := arr[:]
	s4 := arr[2:]

	fmt.Println(s1)
	fmt.Println(s2)
	fmt.Println(s3)
	fmt.Println(s4)


	fmt.Printf("%p\n",s1)
	fmt.Printf("%p\n",s2)
	fmt.Printf("%p\n",s3)
	fmt.Printf("%p\n",s4)
}

func demo2() {
	a := make([]int, 5, 10) //创建五个长度的， 10 容量的切片  , make会带有默认值。
	fmt.Printf("len=%d,cap=%d,silec=%v", len(a), cap(a), a)
}
